//拦截所有请求，添加路径前缀
axios.defaults.baseURL = 'http://api-breakingnews-web.itheima.net'
//从需求角度触发，没有必要所有请求都添加token
// axios.defaults.headers.common['Authorization']=localStorage.getItem()


//添加请求拦截器
// use方法里面可以传递两个函数
axios.interceptors.request.use(function (config) {
    //打印config参数
    console.log(config);
    // 判断路径中，是否包含 /api或者 /my 
    // 或者  >=0 或者 !==-1 或者 >-1  都说明查到了
    if (config.url.indexOf('/my') !== -1) {
        //这样赋值，不会影响原来的头信息设置
        // 所有头信息的设置，不要使用对象赋值，要使用 属性，不会出现覆盖
        config.headers.Authorization = localStorage.getItem('token')

    }
    //修改完毕的config需要返回
    return config
}, function (error) {
    //将来讲解Promise对象，详细详解
    return Promise.reject(error)
})

//添加响应拦截器
axios.interceptors.response.use(function (response) {
    //输出响应结果
    console.log(response);
    if (response.data.message === "身份认证失败！") {
        // 跳转到登录页面，销毁token
        location.href = '/login.html'
        localStorage.removeItem('token')
    }
    //返回response
    return response
}, function (error) {
    return Promise.reject(error)
})